home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1991 December / 64er_Magazin_91-12_1991_Markt__Technik_de_Side_A.d64 / main v2.0 (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  8KB  |  279 lines

  1. 1 poke53280,0:poke53281,0
  2. 2 ra = 5
  3. 5 nu= 0
  4. 6 fa = 1000.82836
  5. 10 rem ****************************************
  6. 20 rem * main v1.1  (c) by markt und technik  *
  7. 30 rem * 1991                                 *
  8. 40 rem * written by hgrb                      *
  9. 50 rem * 1991                                 *
  10. 60 rem ****************************************
  11. 70 lw=8: rem laufwerksnummer
  12. 80 ifa=0thena=1:load"messzyklus",lw,1
  13. 81 ifa=1thena=2:load"messzyklus2",lw,1
  14. 85 print"[147]moechten sie den a/d-wandler eichen?"
  15. 86 print"(j/n)"
  16. 87 geta$:ifa$=""then87
  17. 88 ifa$="j"then1000
  18. 89 ifa$<>"n"then86
  19. 90 z%(1)=2:z%(2)=2:z%(3)=2:z%(4)=10:z%(5)=10:z%(6)=10
  20. 100 s%(1)=1:s%(2)=15:s%(3)=29:s%(4)=1:s%(5)=15:s%(6)=29
  21. 110 l$="          "
  22. 120 print"[147]            64'er messlabor             "
  23. 130 dimma$(6,4)
  24. 140 open1,lw,15,"i"
  25. 150 open2,lw,2,"konfigmes,s,r"
  26. 160 input#2,n :rem anzahl installierter module
  27. 170 for m = 1 to n :rem moduldaten einlesen
  28. 180 :  input#2,g$(m) :rem zu messende groesse
  29. 190 :  input#2,e$(m) :rem einheit des messwerts
  30. 200 :  input#2,b(m) :rem bildschirmposition
  31. 210 :  input#2,a(m)  :rem archivierung?
  32. 220 :  input#2,n$(m) :rem archivierungsdatei
  33. 230 next m :rem naechstes modul
  34. 231 close2
  35. 232 close1
  36. 240 rem *************************************
  37. 250 rem * start der messroutinen            *
  38. 260 rem *************************************
  39. 270 rem initialisierung
  40. 280 gosub60000 : rem hier kann funkuhrroutine eingebaut werden
  41. 285 print"[147]            64'er messlabor             "
  42. 290 for i = 1 to 6
  43. 300 :  ma$(i,0) = "modul "+str$(i)+"  "
  44. 310 :  ma$(i,1) = "000000[146]"
  45. 320 :  ma$(i,2) = "unit[146]"
  46. 330 :  ma$(i,3) = "[158]          [146]"
  47. 340 :  m  = i
  48. 345 :  bs = i
  49. 350 :  gosub 570: rem maske aufbauen
  50. 360 next i
  51. 370 print"";
  52. 380 fora=1to8
  53. 390 :  print"[165]"spc(11)"[167]"spc(13)"[167]"spc(12)"[167]";
  54. 400 next a
  55. 410 print"[207][183][183][183][183][183][183][183][183][183][183][183][208][183][183][183][183][183][183][183][183][183][183][183][183][183][208][183][183][183][183][183][183][183][183][183][183][183][183][208]";
  56. 420 fora=1to8
  57. 430 :  print"[165]"spc(11)"[167]"spc(13)"[167]"spc(12)"[167]";
  58. 440 next a
  59. 450 print"[183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183]";
  60. 455 open1,8,15,"i"
  61. 460 form=1ton
  62. 470 :  bs=m
  63. 480 :  on m gosub 10000,13000,11000,12000,10000,10000
  64. 490 ma$(m,0)=""+g$(m)+left$(l$,10-len(g$(m)))
  65. 500 ma$(m,2)=""+e$(m)+left$(l$,4-len(e$(m)))
  66. 510 :  ma$(m,1)=""+right$(str$(an),7)+left$(l$,6-len(str$(an)))
  67. 520 :  bs =b(m)
  68. 530 :  gosub570
  69. 535 gosub 61000
  70. 536 if a(bs) = -1 then gosub 59000: rem archivierung?
  71. 540 next m
  72. 550 goto460
  73. 560 end
  74. 570 rem ************************************
  75. 580 rem *bildschirmausgabe anzeigefeld     *
  76. 590 rem *uebergabewert: nummer der         *
  77. 600 rem *ausgabeposition in bs             *
  78. 610 rem ************************************
  79. 620 print"";: rem auf homeposition
  80. 630 for a = 0 to z%(bs) : rem zeilen-
  81. 640 :  print"";
  82. 650 next a
  83. 660 for a = 1 to s%(bs) : rem und spalten-
  84. 670 :  print""; :rem position
  85. 680 next a : rem einstellen
  86. 690 print ""ma$(m,0); : rem ausgabe messgroesse
  87. 700 print"[157][157][157][157][157][157][157][157][157][157]";ma$(m,1);ma$(m,2); : rem ausgabe wert und einheit
  88. 710 print"[157][157][157][157][157][157][157][157][157][157]";ma$(m,3);
  89. 720 return
  90. 1000 print"[147]eichung des analog/digitalwandlers"
  91. 1010 print"schliessen sie den eingang des"
  92. 1020 print"a/d-wandlers mit einer drahtbruecke"
  93. 1030 print"kurz (entspricht 0 volt).
  94. 1040 [153]"druecken sie dann eine taste!"
  95. 1050 [161]a$
  96. 1060 [139]a$[178]""[167]1050
  97. 1070 bs[178]1
  98. 1080 [129]a[178]1[164]10
  99. 1090 :  [141]5000
  100. 1100 :  n[178]n[170]fz
  101. 1110 [130]a
  102. 1120 n[178]n[173]10
  103. 1130 [153]"eichwert fuer 0volt ist ";n
  104. 1140 [153]"bitte tragensie diesen wert im"
  105. 1150 [153]"programm ein mit:"
  106. 1160 [153]"5 n = <eichwert>"
  107. 1170 [153]"verbinden sie nun den eingang"
  108. 1180 [153]"des a/d-wandlers mit 5 volt."
  109. 1190 [153]"druecken sie dann eine taste."
  110. 1200 [161]a$
  111. 1210 [139]a$[178]""[167]1200
  112. 1220 bs[178]1
  113. 1230 [141]5000
  114. 1240 [129]a[178]1[164]10
  115. 1250 :  [141]5000
  116. 1260 :  fa[178]fa[170]fz
  117. 1270 [130]a
  118. 1280 fa[178]fa[173]10
  119. 1290 [153]"die steigung betraegt ";fa[173]5
  120. 1300 [153]"tragen sie diesen wert im"
  121. 1310 [153]"programm ein mit:"
  122. 1320 [153]"6 fa = <steigung>"
  123. 1330 [153]"danach muss das programm unbedingt"
  124. 1340 [153]"unter dem namen main v1.2e"
  125. 1350 [153]"auf disk gespeichert werden!"
  126. 1360 [128]
  127. 5000 [143] ************************************
  128. 5010 [143] * analogmessroutine                *
  129. 5020 [143] * uebergabewert: analogmodul-      *
  130. 5030 [143] * nummer in variable bs            *
  131. 5040 [143] * eichwerte fuer nullpunkt in      *
  132. 5050 [143] * n, fuer steigung in fa           *
  133. 5060 [143] ************************************
  134. 5070 [151]56579,[194](56579)[176] 224
  135. 5080 [151] 56577,m[172]32                   :[143] analogport waehlen
  136. 5090 [158] 53100                          :[143] timing nur in masch.
  137. 5100 fz [178] (255[171][194](56580))[170](255[171][194](56581))[172]256
  138. 5110 u [178] (fz [171] nu) [173] fa                  :[143] eichung
  139. 5120 [142]
  140. 10000 [143] ************************************
  141. 10010 [143] * temperaturmodul                  *
  142. 10020 [143] * uebergabe: analogportnummer in bs*
  143. 10030 [143] ************************************
  144. 10035 nt[178]2224.400:ns[178]23.5700
  145. 10036 [151]56579,[194](56579)[176]224
  146. 10037 [151]56577,m[172]32
  147. 10040 [129]te[178]1[164]1000
  148. 10050 [130]
  149. 10060 [141] 5000
  150. 10100 an [178][181](((fz[171]nt)[173]ns)[172]10[170].5)[173]10
  151. 10109 [139]an[177][178]100[167]an[178]99.99
  152. 10110 [142]
  153. 11000 [143] ************************************
  154. 11010 [143] * druckmodul                       *
  155. 11020 [143] * uebergabe: analogportnummer in bs*
  156. 11030 [143] ************************************
  157. 11040 nt[178]0000.000:ns[178]2.10970464
  158. 11050 [151]56579,[194](56579)[176]224
  159. 11060 [151]56577,m[172]32
  160. 11070 [129]te[178]1[164]1000
  161. 11080 [130]
  162. 11090 [141] 5000
  163. 11100 an [178] [181]((fz[171]nt)[173]ns)
  164. 11110 [139]tl[178]0[167]tl[178]fz
  165. 11120 [139]an[177][178]10000[167]an[178]9999
  166. 11130 [139]dm[179][177]3[167]11220
  167. 11140 tm[178]tm[173]dm
  168. 11150 [153]""[166]s%(bs))" cmd cmd "
  169. 11160 [153][166]s%(bs))
  170. 11170 [139]tm[177]tl[170].3[167][153]"+"
  171. 11180 [139]tm[179]tl[171].3[167][153]"-"
  172. 11190 [139]tm[179][178]tl[170].3[175]tm[177][178]tl[171].3[167][153]"="
  173. 11200 tl[178]tm
  174. 11210 tm[178]0
  175. 11220 dm[178]dm[170]1
  176. 11230 [139]dm[178]90[167]dm[178]0
  177. 11240 tm[178]tm[170]fz
  178. 11250 [142]
  179. 12000 [143] ************************************
  180. 12010 [143] * regenmodul                       *
  181. 12020 [143] * uebergabe: analogportnummer in bs*
  182. 12030 [143] ************************************
  183. 12040 rw[178]0
  184. 12050 nt[178]28.000:ns[178]0.946405
  185. 12060 [151]56579,[194](56579)[176]224
  186. 12070 [151]56577,m[172]32
  187. 12080 [139] re[178]1[167]re[178]0:[141]12170
  188. 12090 [129]te[178]1[164]1000
  189. 12100 [130]
  190. 12110 [141] 5000
  191. 12120 an [178][181]((fz[171]nt)[173]ns)
  192. 12130 [139]an[179]0[167]an[178]0
  193. 12140 rm[178]an
  194. 12150 [139]an[177][178]10000[167]an[178]9999
  195. 12160 [142]
  196. 12170 [143] *************************************
  197. 12180 [143] * regenmesserreset                  *
  198. 12190 [143] *************************************
  199. 12200 [151]56579,16
  200. 12210 [151]56577,[194](56577)[175][168]16
  201. 12220 [151]56577,[194](56577)[176]16
  202. 12230 [151]56579,0
  203. 12240 [153]"tagesregenmenge: "rm
  204. 12250 [129]ix[178]1[164]2000:[130]
  205. 12260 [142]
  206. 13000 [143] ************************************
  207. 13010 [143] * feuchtemodul                     *
  208. 13020 [143] * uebergabe: analogportnummer in bs*
  209. 13030 [143] ************************************
  210. 13040 nt[178]17803.166666:ns[178]65.79166666
  211. 13050 sw[178][194](56576):[151]56576,[194](56576)[175][168]4
  212. 13060 [158]53000
  213. 13070 [151]56576,sw
  214. 13080 fz [178] (255[171][194](56324))[170](255[171][194](56325))[172]256
  215. 13090 an [178][181]((nt[171]fz)[173]ns)
  216. 13100 [139]an[177][178]10000[167]an[178]9999
  217. 13110 [142]
  218. 59000 [143] ************************************
  219. 59010 [143] *                                  *
  220. 59020 [143] * archivierungsmodul               *
  221. 59030 [143] * uebergabe: modulnummer in bs     *
  222. 59040 [143] *            filename in n$(bs)    *
  223. 59050 [143] *            messwert in an        *
  224. 59060 [143] *            datum in d$           *
  225. 59070 [143] *            zeit in t$            *
  226. 59080 [143] *                                  *
  227. 59090 [143] ************************************
  228. 59100 mw(bs) [178] mw(bs) [170] an
  229. 59110 ze(bs) [178] ze(bs) [170] 1
  230. 59120 [139] ze(bs) [179] ra [167] 59310
  231. 59130 ze(bs) [178] 0
  232. 59140 [159]2,8,2,n$(bs)[170]",l,"[170][199](16):[143] dateilaenge 16 byte
  233. 59150 [153]"datei"n$(bs)
  234. 59160 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0):[143] auf 1. byte positionieren
  235. 59170 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0):[143] zur sicherheit zweimal
  236. 59180 [132]2,lr$:[143] anzahl schon vorhandener records
  237. 59190 lr [178] [197](lr$)[170]1
  238. 59200 hi [178] [181](lr[173]256)
  239. 59210 lo [178] lr[171]256[172]hi
  240. 59220 [152]1,"p"[170][199](2)[170][199](lo)[170][199](hi)[170][199](0):[143] neuen record positionieren
  241. 59230 [152]1,"p"[170][199](2)[170][199](lo)[170][199](hi)[170][199](0):[143] zur sicherheit zweimal
  242. 59240 rc$[178]t$[170][200]([196](mw(bs)[173]ra),4):[143] datensatz zusammensetzen
  243. 59250 mw(bs)[178]0
  244. 59260 [152]2,rc$:[143] record schreiben
  245. 59270 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0)
  246. 59280 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0)
  247. 59290 [152]2,lr
  248. 59300 [160]2:[143] datei schliessen
  249. 59310 [142]
  250. 60000 [153]"bitte zeit eingeben! (hh,mm)"
  251. 60010 [133]h$,m$
  252. 60020 h1[178][197]([200](h$,1)):h2[178][197]([201](h$,1))
  253. 60030 [139]h1[178]2[167]hh[178]144:[137]60060
  254. 60040 [139]h1[178]1[176]h1[178]0[167]hh[178]h1[172]16:[137]60060
  255. 60050 [153]"bitte format beachten (hh,mm)":[137]60000
  256. 60060 [139]h2[177][178]0[175]h2[179][178]9[167]hh[178]hh[170]h2:[137]60080
  257. 60070 [137]60050
  258. 60080 m1[178][197]([200](m$,1)):m2[178][197]([201](m$,1))
  259. 60090 [139]m1[179]0[176]m1[177]9[176]m2[179]0[176]m2[177]9[167]60050
  260. 60100 mm[178]m1[172]16[170]m2
  261. 60110 [151]56587,hh
  262. 60120 hl[178]h1[172]10[170]h2
  263. 60130 [151]56586,mm
  264. 60140 [151]56585,0
  265. 60150 [151]56584,0:[143] uhr startet
  266. 60160 [142]
  267. 61000 hh[178][194](56587):[143] uhr stoppt
  268. 61010 mm[178][194](56586)
  269. 61020 zs[178][194](56584):[143] uhr laeuft weiter
  270. 61030 h1[178][181](hh[173]16):[139]h1[178]9[167]h1[178]2
  271. 61040 h[178]h1[172]10[170](hh[175]15)
  272. 61050 [139]h[178]24[167]h[178]0
  273. 61060 [139]hl[179][177]rw [175]h[178]rw[167]re[178]1:[143] resetzeit erreicht
  274. 61070 hl[178]h
  275. 61080 mi[178][181](mm[173]16)[172]10[170](mm[175]15)
  276. 61090 [153]"              cmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmd"h":"mi" uhr"
  277. 61100 t$[178][196](h)[170][196](mi)
  278. 61110 [142]
  279.